/**
 *
 * 原型模式
 * 用原型实例指定创建对象的种类，并通过拷贝这些原型创建新的对象。
 * 实际上就是实现 Cloneable 接口，重写 clone（）方法，然后去复制出一个个对象。
 * 注意： == 不同，equals()不同，hashCode不同，但是属性值相同
 * @author ZhouWeiBo
 * @create 2022/6/7
 */
public class App {
    public static void main(String[] args) throws CloneNotSupportedException {
        People people = new People("小王","男",18);
        System.out.println(people);
        People newPeople = people.prototype();
        System.out.println(newPeople);

        System.out.println(people.toString().equals(newPeople.toString()));
        System.out.println(people == newPeople);
        System.out.println(people.equals(newPeople));
        System.out.println(people.hashCode() == newPeople.hashCode());
    }
}
